home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
By Popular Request 2.0
/
By Popular Request 2.0 (Arsenal Computer).ISO
/
amiga_6
/
xprz351.lha
/
docs
/
History
next >
Wrap
Text File
|
1995-06-29
|
13KB
|
338 lines
1.0, 29 Jul 89 - Original release.
1.1, 03 Aug 89 - Fixed zsdata() to send file data packet in one swrite()
call instead of calling zsendline for every byte, to prevent
hammering the serial.device with single-byte write requests
during uploads, and to speed up effective data transmission
rates.
2.0, 28 Oct 89 - Converted from Manx to Lattice C 5.04. Created prototypes and
made other tweaks as required. Designed new library skeleton
for Lattice code, replacing the old Manx library skeleton.
Added new options TC, A, D, K, S, R, and P. Added support for
xpr_options() callback routine, and generally brought things
up to par with XPR Spec 2.0.
2.10, 12 Feb 91 - Fixed the following generally minor problems:
o No longer munges A6 register (this was potentially serious), and added
callback glue to ensure comm program can't munge OUR registers either.
Decided that the protective glue was much safer than the more elegant
direct invocation used in version 2.0.
o Slightly less transmission overhead (concatenates all output into single
swrites, builds output packets a bit faster).
o Considerably less receive overhead; does a lot more waiting and a lot
fewer sreads, especially at high speed. WARNING: this change doesn't
work with VLT version 4.846 or earlier (yes, Willy; it really was
broken B-)). This change may or may not actually do you any good,
depending upon how your comm program implements the xpr_sread() function.
o Fixed problems getting synchronized with some systems on uploads.
o No longer closes files twice.
o Now uses fully-reentrant sprintf() from amiga.lib; no more nasty BSS.
o A couple of obscure error messages were > 50 bytes long, causing problems
with some comm program's transfer status windows, e.g. the infamouse VLT
"Incredible Shrinking Status Window."
o Stabilized spastic data rate by computing elapsed time more accurately.
o Fixed sprintf() error which caused invalid filelength to be sent on
uploads.
o Aligned all data for optimal performance on 68030++ CPUs (now that I have
my A3000... B-)). Doesn't really make any noticeable difference, but it
makes us 68030 owners feel better anyway. I'm also including a version of
the library compiled for the 68020+ CPU, on the same principle.
o Now uses .DUP2 instead of .DUP.DUP, etc.
o Added config option E for number of errors which cause an abort.
o Fixed bogus IO_Torture false alarm concerning timer.device.
o Tried to fix an elusive Enforcer hit on reading location 0, but I'm not
sure I really got it, since I had trouble reproducing the problem.
2.50, 15 Nov 91 - Fixed bugs and added the following features:
o Added code to support 32 bit CRC (Circular Redundancy Check).
CRC-32 adds a little more protection to the data being sent
and received than does CRC-16. Source for the CRC-32 additions
came from the Unix version of RZ/SZ by Chuck Forsberg.
o Added code to update_rate() function in utils.c to avoid the
Guru # 80000005 if you decide to adjust the system clock during an
upload or download from Daylight Saving Time to Standard Time. :-)
o Proto additions using libinit.o and libent.o, and eliminating all
of the assembler code was supplied by Jim Cooper of SAS. Jim
also supplied the mysprintf() code to replace sprintf(). This
version of XprZmodem can be compiled with the SAS version 5.10 C Compiler.
I do not know how well it might compile with the Aztec compiler.
2.50 update_rate() fixed fatal error in current-duration
calculation. Caused 80000005 Guru.
sprintf() replaced with Mysprintf() routine.
Thanks to Jim Cooper of the SAS institude
for the libinit and linent objects.
Cyclic Redunduncy Check now uses a 32-bit hard-coded CRC table.
CRC-32 release by Bill Perkins.
--------------------------------------------------------------------------
This is basically version 2.50. I just changed rx_timout from 600 to
30 in send.c to fix uploads so they truly work.
NOTE: I compiled the 020 version using lattice 5.10b (as well as the
none '020 version), but since I only have a 68000, I don't know how
well or if it works.
John Tillema
jtillema@hacks.arizona.edu
------
Recompiled the 2.51 020 version as 2.52 after fixing the LmkFile.020 file.
Internal name of the library was being compiled as XprZmodem.Library.020
rather than as XprZmodem.Library.
Bill Perkins
BIX: Wmperkins
--------------------------------------------------------------------------
2.51, 29 Jan 92 - Rxtimeout changed from 600 to 300 for upload timeout
problem by John Tillema.
2.52, 06 Mar 92 - Recompile code for 68020 library code. Non-68020 code worked
fine but John Tillema was not able to test the 2.51 68020
version.
---------------------------------------------------------------------------
2.53 - Special Version by Olaf 'Olsen' Barthel Author from "Term"
(Don't know what he change)
---------------------------------------------------------------------------
2.60 - Don't know who made this version
2.60a - Don't know who made this version
---------------------------------------------------------------------------
INFO: All Libs up to 2.61 are based on the Source of V2.52!!!
=============================================================
changes:
2.61 - mysprintf() in Utils.c - returned int changed to unsigned int
SAS/C get a Warning of this.
- NOT RELEASED! ONLY FOR BETATESTER.
In function XProtocolHostMon() (module Utils.c) declared
static UBYTE startrcv[] = { ZPAD, ZDLE, ZHEX, "00" };
SAS/C 6.x get a error of this.
Declared to:
static UBYTE *startrcv[] = { ZPAD, ZDLE, ZHEX, '0',á'0' };
2.62 - Now Blocksize avaiable
- NOT RELEASED!
Changes by Rainer Hess
2.63 - Now support locale.library to use different languages with
Workbench 2.1, 3.x. On this time will be only the default
englisch-language and a german catalog-file. Please send me
the filled up xprzmodem_catalog.ct for your language.
- NOT RELEASED! ONLY FOR BETATESTER.
Changes by Rainer Hess
2.64 - Aug 3 1993 - Blocksize was global declared, it's now in
struct Vars.
- NOT RELEASED!
Aug 4 1993 - Bug-Fix in function update_rate(), maschine
crashes on little files e.g. 2 Bytes - old problem from
2.52 and before!
Changes by Rainer Hess
3.0 - It's time to make a full release...
Compile Date 13.August.93
Rainer Hess - EMail: rhess@a3tnt.adsp.sub.org
3.1 - Documentation update by Geoffrey Faivre-Malloy
Conversion of documentation to Amigaguide format.
Code-Changes by Rainer Hess:
ZModem runs always with the sender blocksize or uses standart-mode
(M1024) if there is on one system a older zmodem.
Compile Date 03.October.93
3.2 - Added support for FTN operations and FTN Zmodem-derivative protocols
It seems that Yves Koingshofer was not given credit for such features
as dos.library usage, variable block-size, 8 K blocks etc. Perhaps
these changes were done independantly to Yves's xprzedzap.library
derviative or perhaps credit for his work was inadvertandly left out.
Since xprzedzap.library received wide release via AmiNet, and has been
in use with numerous BBS's and Term programs as well as with mailers
such as JAZ, POP, RAP, GAZEBO, PORTICUS, UMBRELLA and JAMMAIL for a
number of years, I found it strange no credit was given to Yves who
put so much effort into this work.
Credit was also not given to Russell McOrmond, one of the founding
members of the XPR list whose format.a was renamed to xprsprintf.a with
only slight modifications.
These oversights are rectified here.
Those few changes of Yves's that did not cross over from xprzedzap.library
versions .55, .85, 1.00 and 1.5 (all based upon xprzmodem 2.52 source)
or were used without providing a setup option for modification have been
added here, with some changes of my own to simplify operations when the
protocol is used in mailers.
Code-Changes by Robert Williamson, in consultation with Yves
Konigshofer. Although Yves no longer has an Amiga, he was kind enough
to spend many, many hours with me on the phone, discussing the various
problems and solutions involved in producing these libaraies. My
thanks to him are heartfelt.
General:
A number of strings were not localized, corrected.
Only wb2.1+ versions supported
Removed all extra makefiles and replaced with a general one using
macros.
Added callbacks.a - Protection of ALL registers used for callback
functions is restored.
XPR 3 xpr_updstatus function is enabled, permitting notification
of transfer status for EACH file sent or received.
Changed most references to KSIZE as a defined constant to use local
variable v-Ksize instead.
Compiler DEFINE ZEDZAP causes certain code sections to be replaced with
xpr-friendly versions from xprzedzap source or new code inserted.
These changes should be compatible with usage of the library in pure
Zmodem mode.
Note that set up Defaults are different with xprzedzap.library.
TN No Text translation
OR Overwrite Resume
B16 Buffer size 16KB
F0 Frame size = filelength
E30 Error count 30
SN Do not send full directory path
RN Do not use received full directory path
AN Disable Auto-activate mode
DN Do not Delete after sending
KY Keep partial files
P"" Comm progrmas provides Path to use for received files
M8192 Maximum packet size 8K
C0 Set Link BPS Rate
NY Alow Send if there are no files
QN Disable DirectZap escape only CAN
ZY Enable FTN mode
xprzmodem.library
TC Comm Program Sets Text translation mode
ON Overwrite No
B16 Buffer size 16 KB
F0 Frame size = filesize
E10 Error count 10
SN Do not Send full directory path
RN Do not use Received full directory path
AY Enable Auto-activate mode
DN Do not Delete after sending
KY Keep partial files
P"" Comm program sets Path to use for received files
M1024 Set maximum packet size 1K
C0 Set Link BPS Rate
NN Do not Send if there are no files
QN Disble DirectZap escape only CAN
FN Disable FTN mode
New Setup options:
Z - FTN mode
The Z option enables FTN operation, when Y, the following is in effect:
- RxTimeOut is restored to 600ms
- transfers start with blocksize specified in M option.
- serialbuffer is cleared before sending/recving. In FTN
mode the turnaround from sending to receiveng (and vis-versa)
is quite fast, clearing the buffer avoids reading echos of our
own characters or leftovers from the previous transfer.
C<link bps>
Buffer size, and cps calculations will be based upon link rate if
passed with C<baud> option, otherwise they will be based upon LOCKED
bps.
N - send no files mode (DirectZap, ZedZip and ZedZap protocols)
It is permitted to have a session without sending or receiving files if
N option is Y. This is required with some protocols in FTN mode so as
not to generate a spurious failure after a mailer session. This also
chnages EOF mode from sending CAN's to just sending ZFIN.
Q - DirectZap mode
Only ZDLE adn ZDLEE will be escaped is Q option is Y (DirectZap protocol)
Changes in status display:
XPR 2.001 support for dual-status windows added.
Protocol name displayed will be one of:
Zmodem, 1K blocks standard, up to 8K, non-ftn mode
ZedZap, up to 8K Blocks based upon bps rate, ftn mode
ZedZip, 1k blocks , ftn mode
DirectZap, up to 8k blocks, minimum escaping, ftn mode
Added localization for new options. These are NOT translated for
german catalog, so that catalog has been removed from distribution.
During batch transfers, Error message field is set to "None" when
starting to send or receive next file.
3.2a (no change in Version number)
Corrected DirectZap xfer failure problem
"Resuming" message was ALWAYS was being printed at start of xfer
if (OR) resume was enabled. Now only printed if Starting position is
not 0.
3.3
Finished dual-display support, tested with JamMail
3.4
Protocol names were not being displayed correctly on receive.
3.5
Added setup option switch to enable/disable XPR2.001 extensions.
Default is NO for xprzmodem.library and Y for xprzedzap.library.
3.51
Fixed improper variable names in setup which caused unexpected results
with TERM.
History removed from Guide file
Merged xprzedzap.doc into Guide file
Catalog source now included in BOTH source and user archives